我正在制作一个应用程序,允许用户应用某些工具来分析视频和图像。我需要帮助我如何在我的表单中加载到WindowsMediaPlayer的视频上实际绘制/写入并能够将其保存。它需要能够让用户在其上徒手绘制和绘制形状。提前致谢,克里斯:) 最佳答案 使用winforms中的wmp控件,这是一项非常重要的任务,即使不是不可能完成的任务。我不知道有什么方法可以实际在wmp上绘图,但您可以在覆盖在wmp上的透明面板上绘图。如果视频正在播放,这将不起作用,但您可以在暂停时显示绘图。我已经使用这种技术来绘制类似于wmp的第3方视频控件。(编辑-这似
我需要使用GraphicsPath绘制弧线并具有初始点、中间点和终点。电弧必须通过它们。我尝试了.DrawCurve和.DrawBezier,但结果并不完全是一条弧线。我能做什么?解决方案:经过几个小时的代码编写后,我设法用这个算法画出了我想要的东西(给出3点a、b、c和一个GraphicsPath路径):doubled=2*(a.X-c.X)*(c.Y-b.Y)+2*(b.X-c.X)*(a.Y-c.Y);doublem1=(Math.Pow(a.X,2)-Math.Pow(c.X,2)+Math.Pow(a.Y,2)-Math.Pow(c.Y,2));doublem2=(Math.
我有一个从Panel创建的全局图形对象。每隔一定时间从磁盘中拾取图像并使用Graphics.DrawImage()绘制到面板中。它在几次迭代中工作正常,然后我得到以下有用的异常:System.Runtime.InteropServices.ExternalException:AgenericerroroccurredinGDI+.atSystem.Drawing.Graphics.CheckErrorStatus(Int32status)atSystem.Drawing.Graphics.DrawImage(Imageimage,Int32x,Int32y)atSystem.Drawi
我在网上找到了几篇关于在WPF中绘制虚线的文章。但是,它们似乎围绕着使用Line类,它是WPF中的UIElement。它是这样的:LinemyLine=newLine();DoubleCollectiondashes=newDoubleCollection();dashes.Add(2);dashes.Add(2);myLine.StrokeDashArray=dashes;现在,我在一个装饰器中,我只能访问一个绘图上下文。在那里,我或多或少地减少了绘图基元、画笔、钢笔、几何图形等。这看起来更像这样:varpen=newPen(newSolidColorBrush(Color.From
在矩形F的中心绘制字符串的最佳方法是什么?可以缩小文本字体大小以适合它。在大多数情况下,文本太大而不适合给定的字体,因此必须缩小字体。 最佳答案 此代码将文本水平和垂直居中:stringFormatsf;sf.Alignment=StringAlignment.Center;sf.LineAlignment=StringAlignment.Center;grp.DrawString(text,font,Brushes.Black,rectf,sf); 关于c#-在中心绘制文本,我们在St
在下面的代码中,我尝试绘制两条线:一条线的宽度为亚像素(0.5),另一条线的宽度为1px:varimg=newBitmap(256,256);Graphicsgraphics=Graphics.FromImage(img);graphics.SmoothingMode=SmoothingMode.AntiAlias;//Drawasubpixelline(0.5width)graphics.DrawLine(newPen(Color.Red,(float)0.5),0,100,255,110);//Drawasinglepixelline(1width)graphics.DrawLin
我的应用程序接收来自外部设备的数据。每个数据点后,有一个短的电子死区时间(大约10µs),其中没有其他数据点可以到达,我的应用程序应该使用它来处理和显示散点图中屏幕上的数据。我最重要的目标是不超过这个电子死区时间。如何在基于WPF的应用程序中解决这个问题,以及对不同方法进行基准测试的方法是什么?我尝试过的是:在Canvas中为每个到达的数据点创建一个Rectangle。这太慢了10倍。相同的方法,但在自定义控件中绘制DrawingVisuals。好多了,但还是有点太慢了。向树中添加视觉/逻辑子项可能会产生过多的开销。一个UserControl,其中所有数据点都存储在一个数组中并显示在O
我尝试将表单的不透明度设置为50%,然后在其上绘制一个字符串。似乎我在上面绘制的字符串也具有50%的不透明度。我如何绘制一个非透明字符串,但让表单背景显示50%?如果可能的话,我也愿意在WPF中执行此操作,但我需要明确的说明或示例项目,因为我以前从未这样做过。澄清一下,我希望表单背景是黑色,80%不透明到下面的内容,然后我想在上面绘制文本等,并让它看起来100%不透明。 最佳答案 这在WPF中很容易完成:在窗口上设置WindowStyle="None"(注意:这是必需的,您不能有透明度和标准窗口镶边)在窗口上设置AllowsTran
我需要在WPF中的Canvas上构建函数绘制网格线:voidDrawGridLine(doublestartX,doublestartY,doublestepX,doublestepY,doubleslop,doublewidth,doubleheight){//Howtoimplementdrawgridlinehere?}我该怎么做? 最佳答案 您实际上不必使用WPF“绘制”任何东西。如果要绘制线条,请使用适当的几何图形来绘制它们。在您的情况下,它可能真的很简单。您只是在绘制一个网格,因此您可以创建一个DrawingBrush来
我从Microsoft的文档中看到,我可以使用“xlBordersIndex”属性访问单元格的特定边框边缘,例如设置单元格左边缘的边框样式:range.Borders[Microsoft.Office.Interop.Excel.XlBordersIndex.xlEdgeLeft].LineStyle=Excel.XlLineStyle.xlContinuous;但是如果我只想绘制所有边框怎么办?我试过了range.BorderAround2();但这只是在范围本身周围画了一个方框,我明白这一点。于是我尝试了range.Cells.BorderAround2();认为它会遍历范围内的每